/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package Analysis;

/**
 *
 * @author asfeor
 */

interface Analys{
    public int AnalysisInput(String[] args);
    public int AnalysisMask(String m);
    
    
}
public class Analysis implements Analys {

    @Override
public int AnalysisInput(String[] args){// проверяет маску ввода на коректность 
boolean Dir=false,                      // и выбирает вариант ввода
        DirPath=false,
        Mask=false,
        MaskPath=false,
        help=false,
        Reg=false,
        RegPath=false;
int  i=0, j=0;
while (i<args.length){
   if ("-d".equals(args[i])) {Dir=true; i++;  continue;} // проверяет на ключ директории
   if ("-m".equals(args[i])) {Mask=true; i++; continue;} // проверяет на ключ маски
   if ("-h".equals(args[i])) {help=true; i++; continue;} // проверяет на ключ помощи
   if ("-r".equals(args[i])) {Reg=true; i++; continue;} // проверяет на ключ регулярного выражения
   if ((Dir)&&(i==1)) {DirPath=true; i++; continue;} // проверяет на ввод директории
   if ((Mask)&&((i==1)||(i==3))) {MaskPath=true; i++; continue;}  
   if ((Reg)&&((i==1)||(i==3))) {RegPath=true; i++; continue;}
i++;
}
if ((Dir)&&(DirPath)&&(Mask)&&(MaskPath)) j=1;
if ((Dir)&&(DirPath)&&(Reg)&&(RegPath))  j=2;
if ((!Dir)&&(Mask)&&(MaskPath)) j=3;
if ((!Dir)&&(Reg)&&(RegPath))   j=4;
if ((Dir)&&(DirPath)&&(!Mask)&&(!Reg)) j=5;
if ((Dir)&&(!DirPath)&&(!Mask)&&(!Reg)) j=6;
                     

return j;
    }

 @Override
public int AnalysisMask(String m) {//проверяет маску поиска
int i= 0;
if (m.startsWith("*")) {if (m.endsWith("*")) i= 1; else i= 2; }
    else if (m.endsWith("*")) i= 3;
return i;
    }
    
    
}
